Electronic devices commonly include analog and digital elements. As a result, an analog-to-digital converter (ADC) is used to provide an interface between the two types of signals. Typical analog-to-digital converters include resistor ladders, capacitor arrays, sampled-data comparators, and analog multiplexers, as well as a variety of digital circuits. The digital and analog circuit elements may interact in many different ways. For instance, the digital circuitry may strobe comparators and drive analog multiplexers for routing of analog voltage levels. The analog elements often generate signals interfacing to the digital circuitry. Partitioning the analog and digital domains is difficult because of the existence of feedback signals between the two domains. Analog-to-digital converter architectures continue to grow in complexity as multiple steps and trimming algorithms are employed to obtain higher resolutions. Prior to physical implementation, these and other complex circuit designs are typically tested through a computerized simulation. Simulating a circuit with analog and digital components generally requires separate simulations of the analog and digital blocks.
There are a number of problems with this approach. Primarily, this approach does not detect errors at the interface between the two domains. This interface region of the circuit is susceptible to a number of problems. For instance, resistor tap-points may be off center, decoder or encoder values may be incorrect, capacitor ratios may be mismatched, or the availability of memory addresses may be mismatched with an address strobe. These problems, and others, are often encountered, but they are not detectable by using separate conventional digital and analog simulations.
In addition to the problem of detecting errors at the domain interface, prior art circuit simulation techniques are unsatisfactory to the extent that they rely upon analog simulations. Analog simulations are commonly run on simulators such as SPICE. These simulators are relatively slow. In contrast, digital simulators such as Verilog or Hilo are relatively fast.
Another difficulty associated with running separate simulations for the analog and digital components of a circuit is that the separate simulations do not account for feedback signals which may exist between the two blocks.
Mixed signal simulation design tools presently exist. However, these tools are complex and have not resulted in practical design verification tools.